﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sebrae.Academico.Trilhas.BP;
using Sebrae.Academico.Trilhas.Dominio.Classes;
using Sebrae.Academico.Trilhas.BM.Classes;

namespace Sebra.Academico.Trilhas.BP
{
    public class ManterSolucaoEducacional : BusinessProcessBase
    {

        private BMSolucaoEducacional solucaoEducacional = null;

        public ManterSolucaoEducacional()
            : base()
        {
            solucaoEducacional = new BMSolucaoEducacional(unitOfWork);
        }

        public void Incluir(SolucaoEducacional pSolucaoEducacional)
        {
            solucaoEducacional.ValidarInstancia(pSolucaoEducacional);
            solucaoEducacional.IncluirSolucaoEducacional(pSolucaoEducacional);
        }

        public void Alterar(SolucaoEducacional pSolucaoEducacional)
        {
            solucaoEducacional.ValidarInstancia(pSolucaoEducacional);
            solucaoEducacional.AlterarSolucaoEducacional(pSolucaoEducacional);
        }
              
        public IList<SolucaoEducacional> ObterTodos()
        {
            return solucaoEducacional.ObterSolucoesEducacionais();
        }

        public SolucaoEducacional ObterPorID(int pId)
        {
            return solucaoEducacional.ObterPorId(pId);
        }


        public void Excluir(SolucaoEducacional pSolucaoEducacional)
        {
            solucaoEducacional.ValidarInstancia(pSolucaoEducacional);
            solucaoEducacional.ExcluirSolucaoEducacional(pSolucaoEducacional);
        }

        public IList<SolucaoEducacional> ObterPorFormaAprendizagem(int pIdFormaAprendizagem)
        {
            return solucaoEducacional.ObterPorFormaAprendizagem(pIdFormaAprendizagem);
        }
    }
}
